home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 96 / 096.d81 / classical star (.txt) < prev    next >
Commodore BASIC  |  2022-08-26  |  8KB  |  233 lines

  1. 2 poke55,0:poke56,56:clr:poke650,128
  2. 3 dv=peek(186):ifdv<8thendv=8
  3. 4 dimi,j,k,a,m,n,p,q,r,u,w,x,y,z,pp,b9$,mq,mu,f$,b,ik,nk
  4. 5 dimb$(144),d$(144),m(144),e$(2),h(5),b9$(5),cd$(8,7)
  5. 6 poke53280,0:poke53281,0:print"[147]"chr$(142)"":gosub60000
  6. 9 sys57812"font/ml",dv,0:poke780,0:poke781,0:poke782,56:sys65493
  7. 10 fori=0to24:pokei+54272,0:next:gosub2000
  8. 12 poke53272,31:b1$="[158][213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201]"
  9. 13 b2$="[194]                             [221]":b3$="[158][202][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][203]"
  10. 14 bk$="@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@"
  11. 15 t$=" [129][162][163][164][165][166][167][168][169][170][171][172][173][174][175][176][177][178][146]"
  12. 16 fori=0to11:poke960+i,255:next:fori=12to63:poke960+i,0:next
  13. 17 v=53248:fori=0to2:poke2040+i,15:next
  14. 18 pokev+29,7:pokev+23,7:pokev+28,0:pokev+27,7
  15. 19 goto100
  16. 30 print"[159] page"pptab(10)t$tab(34)"[159]of"p
  17. 31 print"[155]"bk$
  18. 32 print"@@[158][213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][178][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201][155]@@"
  19. 33 fori=1toh(pp):print"@@[158][194]                [209]                [221][151]@[155]@":next
  20. 34 print"@@[158][202][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][177][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][203][151]@[155]@"
  21. 35 print"@@@[151]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@[155]@"
  22. 36 ifh(pp)=16thenprintbk$:return
  23. 38 fori=1to16-h(pp):printbk$:next
  24. 39 return
  25. 40 fori=22to24:poke781,i:sys59903:next
  26. 42 poke214,21:print:print"  crsr keys[154] - move bar   n[154] - new disk"
  27. 44 print" space[154] - select  return[154] - play song(s)"
  28. 46 print"  a[154] - toggle all   p[154] - page   q[154] - quit"
  29. 48 return
  30. 50 fori=22to24:poke781,i:sys59903:next
  31. 52 poke214,22:print:print "    space[154] - next song     q[154] - menu"
  32. 53 print"  t[154] - change tile   b[154] - toggle wiggle"
  33. 54 return
  34. 64 poke214,23:print:print"      [154]press a key to continue";:poke198,0
  35. 66 geta$:ifa$=""then66
  36. 68 return
  37. 70 pokev+21,0:poke214,7:print
  38. 72 printtab(4)"[158]"b1$
  39. 74 printtab(4)b2$:printtab(6)"[145]"me$
  40. 76 printtab(4)b3$
  41. 78 return
  42. 80 sys20480,1024,22120+pp*2000,1000:sys20480,55296,23120+pp*2000,1000:return
  43. 82 sys20480,22120+pp*2000,1024,1000:sys20480,23120+pp*2000,55296,1000:return
  44. 85 poke214,(m+1)/2-(pp-1)*16+1:print:printtab(4-17*(m/2=int(m/2)))"[159]"d$(m)
  45. 86 gosub80:return
  46. 90 z=z+1:ifz>7thenz=0
  47. 92 sys20480,16288+8*z,14336,8:return
  48. 100 print"[147]"tab(10)t$:print"      a knees calhoon inspiration"
  49. 101 me$="     [154]reading directory     ":gosub70:print"[144]"
  50. 102 e$(0)=chr$(159):e$(1)=chr$(5)
  51. 105 fori=0tont:b$(i)="":d$(i)="":m(i)=0:next:i=fre(0)
  52. 110 k=1:sys20736,"$:*",dv:sys20739
  53. 120 ifst<>64theninput#3,a,f$,a$:sys20739:goto145
  54. 123 goto170
  55. 145 ifleft$(f$,2)="m."thend$(k)=right$(f$,len(f$)-2):b$(k)=f$:k=k+1:goto120
  56. 150 ifright$(f$,4)=".mus"thend$(k)=left$(f$,len(f$)-4):b$(k)=f$:k=k+1
  57. 155 goto120
  58. 170 nt=k-1:ifnt=0thenme$="[154]no music files on this disk":gosub70:goto695
  59. 172 ifk=<33thenh(1)=int(k/2):p=1:goto180
  60. 174 ifk=<65thenh(1)=16:h(2)=int((k-32)/2):p=2:goto180
  61. 176 ifk=<97thenh(1)=16:h(2)=16:h(3)=int((k-64)/2):p=3:goto180
  62. 178 h(1)=16:h(2)=16:h(3)=16:h(4)=int((k-96)/2):p=4
  63. 180 if(kand1)=0thend$(k)=" "
  64. 182 pp=1
  65. 190 gosub30
  66. 200 w=pp-1:poke214,2:print
  67. 201 onpgoto202,203,205,208
  68. 202 fori=1tok-1:goto215
  69. 203 ifpp=1thenfori=1to32:goto215
  70. 204 ifpp=2thenfori=33tok-1:goto215
  71. 205 ifpp=1thenfori=1to32:goto215
  72. 206 ifpp=2thenfori=33to64:goto215
  73. 207 ifpp=3thenfori=65tok-1:goto215
  74. 208 ifpp=1thenfori=1to32:goto215
  75. 209 ifpp=2thenfori=33to64:goto215
  76. 210 ifpp=3thenfori=65to96:goto215
  77. 211 ifpp=4thenfori=97tok-1
  78. 215 printtab(4-17*((iand1)=0))e$(m(i))d$(i);
  79. 220 if(iand1)=0thenprint
  80. 230 next
  81. 240 if((kand1)=0)andi<17thenprinttab(21)e$(m(i))d$(k)
  82. 250 gosub40
  83. 260 gosub80:ifpp=pthen290
  84. 270 pp=pp+1:goto190
  85. 290 pp=1:gosub82
  86. 300 w=pp-1:x=48:y=74:n=1+w*32:mq=0:mu=0
  87. 301 poke214,15:print:printtab(4)b1$:printtab(4)b2$"[151]@":printtab(4)b3$"[151]@"
  88. 302 printtab(6)"[154][145][145] press i[154] for music credits "
  89. 303 printtab(6)"[151]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@"
  90. 304 fori=39to41:pokev+i,6:next:pokev+21,7
  91. 305 pokev,x:pokev+2,x+48
  92. 308 ifx=184thenpokev+16,4:pokev+4,8:goto312
  93. 310 pokev+4,x+80:pokev+16,0
  94. 312 pokev+1,y:pokev+3,y:pokev+5,y
  95. 320 geta$:ifa$=""then320
  96. 322 ifa$="[145]"theny=y-8:n=n-2:ify<74theny=66+h(pp)*8:n=2*h(pp)-(x=184)-1:goto305
  97. 324 ifa$=""theny=y+8:n=n+2:ify>73+h(pp)*8theny=74:n=1+w*32-(x=184):goto305
  98. 326 ifa$="[157]"thenx=x-136:n=n-1:ifx<48thenx=184:n=n+2:goto305
  99. 328 ifa$=""thenx=x+136:n=n+1:ifx>184thenx=48:n=n-2:goto305
  100. 330 ifa$=chr$(13)thenpokev+21,0:goto360
  101. 332 ifa$<>"d"then335
  102. 333 pokev+21,0:print"[147]    shift[159] will pause the listing[155]"
  103. 334 sys20224:gosub64:gosub82:pokev+21,7:goto305
  104. 335 ifa$<>"p"then340
  105. 336 gosub80:pokev+21,0:pp=pp+1:ifpp>pthenpp=1
  106. 338 gosub82:goto300
  107. 340 ifa$="a"thenpokev+21,0:fori=1tok:m(i)=1-m(i):next:goto182
  108. 342 ifa$="q"then600
  109. 343 ifa$="i"then1000
  110. 344 ifa$="n"then700
  111. 346 ifa$<>"t"then350
  112. 347 t=t+1:ift>9thent=0
  113. 348 sys20480,15104+8*t,14336,8:goto305
  114. 350 ifa$<>" "then305
  115. 352 poke214,(y-58)/8:print:printtab(4-(x=184)*17);
  116. 354 m(n)=1-m(n):printe$(m(n))d$(n):gosub80
  117. 356 goto305
  118. 360 form=1tok:pokev+21,0
  119. 361 ifd$(m)=" "then365
  120. 362 ifm(m)thenpp=int(m/33)+1:gosub82:gosub366:m(m)=0:gosub85
  121. 364 ifuthenu=0:fori=1tok:m(m)=0:next:m=k
  122. 365 next:pokev+21,0:pp=1:goto190
  123. 366 if(m/2=int(m/2))thenpokev,184:pokev+2,232:pokev+4,8:pokev+16,4:goto368
  124. 367 pokev,48:pokev+2,96:pokev+4,128:pokev+16,0
  125. 368 fori=1to5step2:pokev+i,74+8*int((m+32*(pp=2)+64*(pp=3)+96*(pp=4)-1)/2):next
  126. 370 gosub50
  127. 376 ifleft$(b$(m),2)="m."thengosub500:goto380
  128. 378 gosub400
  129. 379 rem  print"[159] page"pptab(10)t$tab(34)"[159]of"p
  130. 380 if((mq=1)and(peek(2)=255)or((mu=1)and(peek(49152)=0)))thenb=0:goto388
  131. 381 ifbthengosub90
  132. 382 geta$:ifa$<>" "anda$<>"q"anda$<>"t"anda$<>"b"anda$<>"i"then380
  133. 383 ifa$="b"thenb=1-b:goto380
  134. 384 ifa$<>"t"then387
  135. 385 b=0:t=t+1:ift>9thent=0
  136. 386 sys20480,15104+8*t,14336,8:goto381
  137. 387 ifa$="i"thenmk=1:n=m:goto1000
  138. 388 ifa$="q"thennu=1:pokev+21,0:fori=1tok:m(i)=0:next
  139. 389 ifmqthengosub550
  140. 390 ifmuthengosub450
  141. 391 return
  142. 400 sys20480,16384,49152,3153:ifm=rthen430
  143. 410 sys57812b$(m),dv,0:poke780,0:poke781,0:poke782,128:sys65493:r=m
  144. 420 fori=39to41:pokev+i,2:next
  145. 430 sys49615:poke781,0:poke782,128:sys49664:poke49152,7:mu=1:pokev+21,7:return
  146. 450 poke49152,0:poke54276,0:poke54283,0:poke54290,0:sys49897:sys49935:mu=0:return
  147. 500 sys20480,21248,52222,869:ifm=qthen530
  148. 510 sys57812b$(m),dv,0:poke780,0:poke781,0:poke782,160:sys65493
  149. 520 sys57812"w."+d$(m),dv,0:poke780,0:poke781,104:poke782,207:sys65493:q=m
  150. 525 fori=39to41:pokev+i,5:next
  151. 530 sys52222,40960:mq=1:pokev+21,7:return
  152. 550 sys52225:mq=0:return
  153. 600 me$="        [154]quit?  (y[154]/n[154])        "
  154. 610 gosub70
  155. 640 geta$:ifa$<>"y"anda$<>"n"then640
  156. 650 ifa$="n"thengosub82:goto304
  157. 655 poke650,0
  158. 660 open15,8,15,"r0:hello connect=hello connect":input#15,er:close15
  159. 670 ifer<>63thenprint"[159]":poke53272,21:end
  160. 680 print"[147][144]load"chr$(34)"hello connect"chr$(34)",8"
  161. 690 print"run":poke631,13:poke632,13:poke198,2:end
  162. 695 fori=0to2000:next
  163. 700 me$="[154]insert disk and press space"
  164. 710 gosub70
  165. 750 geta$:ifa$<>" "then750
  166. 760 goto100
  167. 1000 pt=pp:pp=3:gosub80
  168. 1002 ifn<4thennk=1:goto1010
  169. 1003 ifn<7thennk=2:goto1010
  170. 1004 ifn<11thennk=3:goto1010
  171. 1005 ifn<15thennk=4:goto1010
  172. 1006 ifn<16thennk=5:goto1010
  173. 1007 ifn<19thennk=6:goto1010
  174. 1008 ifn<22thennk=7
  175. 1010 poke214,15:print:printtab(4)b1$:forik=0to6:printtab(4)b2$:next
  176. 1020 printtab(4)b3$"[145][145][145][145][151]@[159]"
  177. 1030 poke214,16:print
  178. 1040 forik=1to6:lg=len(cd$(nk,ik)):printtab(20-lg/2)cd$(nk,ik):next
  179. 1050 printtab(13)"[154]press any key"
  180. 1055 bq=0
  181. 1060 bq=bq+1:geta$:ifa$=""andbq<500then1060
  182. 1070 gosub82:pp=pt
  183. 1075 ifmkthenmk=0:goto380
  184. 1080 goto305
  185. 2000 cd$(1,1)="clarinet concerto #1 in f min"
  186. 2001 cd$(1,2)="carl maria von weber"
  187. 2002 cd$(1,3)="(1786 - 1826)
  188. 2003 cd$(1,4)[1